[レポート] 統制されたAWS基盤構築のためのハンズオンレシピ - AWS Control TowerとIAM Identity Center #AWSreInvent

[レポート] 統制されたAWS基盤構築のためのハンズオンレシピ - AWS Control TowerとIAM Identity Center #AWSreInvent

Clock Icon2024.12.09

こんにちは、ゲーソルの新屋です。

re:Invent2024のセッションレポートをお届けします。

セッション情報

タイトル

  • Accelerated hands-on recipes for building strong cloud foundations SMB308-R1

セッションタイプ

  • Builders' session

スピーカー

  • Sinisha Mikashinovich, Senior Solutions Architect, AWS
  • Prashanth Ganapathy, Sr. Solutions Architect, Amazon
  • Lavanya Bandari, Sr. Solutions Architect, Amazon
  • Pablo Redondo Sanchez, Principal Solutions Architect, AWS
  • Pawel Zawadzki, Sr. Solutions Architect, Amazon Web Services

セッション概要

Building robust cloud foundations is essential for agility, security, and cloud management, yet challenging for lean technical teams. Join this accelerated builders’ session to gain practical experience and proven strategies, refined through successful deployments in over 200 midsize businesses. Walk away with the critical knowledge and confidence to secure and scale your organization’s cloud infrastructure for growth and sustained success. During this session, explore AWS Control Tower, AWS Organizations, AWS IAM Identity Center, and linked services. You must bring your laptop to participate.

堅牢なクラウド基盤の構築は、俊敏性、セキュリティ、クラウド管理に不可欠ですが、リーンな技術チームにとっては困難です。本セッションに参加することで、200社以上の中堅企業における導入の成功を通じて磨かれた、実践的な経験と実証済みの戦略を学ぶことができます。クラウドインフラの安全性と拡張性を確保し、成長と持続的な成功を実現するための重要な知識と自信を得ることができます。このセッションでは、AWS Control Tower、AWS Organizations、AWS IAM Identity Center、およびリンクされたサービスについて説明します。参加にはノートパソコンが必要です。

内容

本セッションでは、AWS Control Towerを使ったAWS Organizationの構成設定と、AWSアカウントの作成およびIAM Identity Centerのシングルサインオンをワークショップ形式で学ぶことが出来ました。

reinvent-2024-smb308-r1_1

具体的なシナリオは以下のとおりです。

レシピ1: ランディングゾーンの基本セットアップ

  • 1.1 コントロールタワーのアカウント構造の拡張
  • 1.2 既存のAWSアカウントを登録

レシピ2: ユーザーとアクセス管理

  • 2.1 IAMアイデンティティセンターの紹介とMFA(多要素認証)
  • 2.2 アカウントアクセスをユーザーに割り当てる
  • 2.3 アカウントへのユーザーアクセスを確認する

レシピ3: セキュリティとコンプライアンスコントロール

  • 3.1 コントロールライブラリの紹介
  • 3.2 非準拠のS3バケットを検出
  • 3.3 ルートアカウントを保護する
  • 3.4 コンプライアンスステータスを確認する

レシピ4: 財務ガバナンス

  • 4.1 組織のコストエクスプローラーサービスを有効化する
  • 4.2 サンドボックスアカウントの予算上限を設定する

ポイント

Control Towerに既存のAWSアカウントをEnroll(登録)

reinvent-2024-smb308-r1_2

既存のAWSアカウントにAWSControlTowerExecution というロールを作成する必要があります。詳しくは以下のとおりです。

AWSControlTowerExecution ロール

  • Permission: AdministratorAccess
  • Trust Policy:
{
	"Version": "2012-10-17",
	"Statement": [
		{
			"Effect": "Allow",
			"Action": "sts:AssumeRole",
			"Principal": {
				"AWS": Control Towerを実行するアカウントID
			},
			"Condition": {}
		}
	]
}

あとは、Control Towerを実行するアカウントに入り直して

reinvent-2024-smb308-r1_3

Control Tower > OrganizationからEnrollすればOK

reinvent-2024-smb308-r1_4

気になったこと(スピーカーに聞いてみた)

Q: AWSControlTowerExecutionロールは、AdministratorAccessじゃないといけないのか?最小権限の原則にもとづいて、適切なPermissionは無いのか?

A: はい、AdministratorAccessでないといけません。

Q: AWS Control TowerのAccount Factoryで作成したAWSアカウントは、AWSControlTowerExecutionが自動で作成されるか?

A: はい、作成されます。今回のワークショップは、既にあるAWSアカウントなので、手動でAWSControlTowerExecutionロールを作る必要があります。

Control Towerの統制 - コンプライアンスに準拠しないS3バケットの検知

Control TowerのControls libraryから有効化する

reinvent-2024-smb308-r1_5

しばらくするとControl TowerのダッシュボードにNoncompliant resourceとして表示される

reinvent-2024-smb308-r1_6

ルートユーザーとしてのアクションを許可しない

同じくControls libraryから有効化する

reinvent-2024-smb308-r1_7

ルートユーザーに対してMFAを自動化することはできず、手動設定は面倒であるため、ルートアクションを完全にブロックする。

reinvent-2024-smb308-r1_8

サンドボックスアカウントの予算制限 - 予算超過時にSCPによりEC2作成・実行をできなくする

Control TowerのアカウントのOrganizationsでSCPを作成する。

reinvent-2024-smb308-r1_9

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "Action": [
                "ec2:Run*",
                "ec2:Start*",
                "ec2:Create*"
            ],
            "Resource": "*"
        }
    ]
}

予算超過時に、AWS Budgetsがさきほど作成したSCPを適用するための、ロールを作成する

reinvent-2024-smb308-r1_10

{
   "Version": "2012-10-17",
   "Statement": [
      {
         "Effect": "Allow",
         "Action": [
            "iam:AttachGroupPolicy",
            "iam:AttachRolePolicy",
            "iam:AttachUserPolicy",
            "iam:DetachGroupPolicy",
            "iam:DetachRolePolicy",
            "iam:DetachUserPolicy",
            "organizations:AttachPolicy",
            "organizations:DetachPolicy"
         ],    
         "Resource": "*"
      }
   ]
}

最後に、Budgetsを新規作成し、予算超過時のアクションを設定すればOK

reinvent-2024-smb308-r1_11

感想

AWS Control Towerでアカウントを作成する方法は知っていましたが、コンプライアンス非準拠の検知方法や、予算超過時のSCPによる予防的統制について学ぶことが出来ました。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.